--- title: "00-NoSQL 数据库总览" created: 2025-11-25 tags: - 项目筑基 --- # NoSQL 数据库总览 > 🗄️ NoSQL = **Not Only SQL**(不只是 SQL)。它不是某一种数据库,而是一大类"不走关系型路线"的数据库的统称。我目前的真实状态:**先不下载乱配置,等接触到了再下载**——毕竟大概率是和 web 开发有关系,走缓存方面,求快。所以这组先把版图和路线记清楚,不动手瞎配。 ## NoSQL 到底"破"了关系型的什么? 关系型的强项是结构整齐 + 事务可靠,但有三个场景它天生别扭: 1. **要快**:数据在磁盘、查询要解析 SQL,再优化也快不过内存里直接取 2. **要灵活**:字段经常变、结构深嵌套,每次都改表结构太痛苦 3. **要海量**:单机写不动了,得往一堆机器上摊 针对这三个痛点,NoSQL 分化成了几大类: | 类型 | 数据模型 | 代表 | 强项 | 我的状态 | | --- | --- | --- | --- | --- | | KV 型 | key → value | **Redis** | 内存级读写:缓存 / 会话 / 队列 | 有完整学习路线,未实操 | | 文档型 | JSON 文档 | **MongoDB** | schema 灵活,嵌套结构友好 | 有上手笔记,轻度 | | 列存型 | 列族宽表 | HBase / Cassandra | 亿级行,高吞吐写入 | 只有概念 | | 图型 | 点 + 边 | Neo4j | 关系查询天然高效 | 只有概念 | ## 为什么 Redis 排第一 NoSQL 家族里,Redis 是后端开发**必学**的一个:快(内存操作 + 单线程无锁竞争)、用途广(缓存、分布式锁、排行榜、消息队列都能干)、面试必问。我的定位很明确:先跟 web 项目学缓存用法,原理往后补。 学习路线展开见 [[01-Redis 学习路线|01-Redis 学习路线]](五阶段:入门 → 实战 → 高阶 → 原理 → 面试)。系统讲解四篇:[[02-Redis 核心数据结构与命令|02 核心数据结构与命令]] → [[03-Redis 应用实战|03 应用实战]] → [[04-Redis 持久化与高可用|04 持久化与高可用]] → [[05-Redis 底层原理与性能|05 底层原理与性能]]。 ## mongoDB:文档型的代表 mongoDB 把"表"换成"集合"、"行"换成"文档"(JSON),同一个集合里的文档可以有不同字段——灵活,代价是复杂查询和事务弱于关系型。 - 上手笔记:[[02-mongoDB|02-mongoDB]] - 与关系型的思维对照:[[03-MongoDB 理解|03-MongoDB 理解]] - 系统讲解三篇:[[04-MongoDB 索引与查询优化|04 索引与查询优化]] → [[05-MongoDB 副本集与分片|05 副本集与分片]] → [[06-MongoDB 数据建模与实战模式|06 数据建模与实战模式]] ## 工具 - Redis 下载: - Redis 可视化客户端(备选):[AnotherRedisDesktopManager](https://github.com/qishibo/AnotherRedisDesktopManager) --- ⬅️ [[05-Python 实战 psycopg 与生态|05-Python 实战 psycopg 与生态]] 🏠 [[00-数据库|00-数据库]] ➡️ [[01-Redis 学习路线|Redis 学习路线]]